package ua.pp.bizon.yandex.api;

import ua.pp.bizon.yandex.api.impl.EventSupport.ChangeListener;
import ua.pp.bizon.yandex.uploader.atom.AppService;

public interface IAppService {

	/**
	 * @return new AppService; cache will be clear
	 */
	public abstract AppService create();

	/**
	 * add re-read job to new AppService
	 */
	public abstract void reread();

	/**
	 * @return cached AppService; if cache null - created
	 */
	public abstract AppService get();

	public abstract void addChangeListener(ChangeListener leftTree);

	public abstract void removeChangeListener(ChangeListener leftTree);

}